const http = require('http');
const querystring = require('querystring');

const server = http.createServer((req, res) => {
  if (req.method === 'POST' && req.url === '/report/cmd') {
    let body = '';
    
    // 接收数据块
    req.on('data', chunk => {
      body += chunk.toString();
    });

    // 数据接收完成
    req.on('end', () => {
      const contentType = req.headers['content-type'];
      let data;

      // 根据Content-Type解析数据
      if (contentType === 'application/json') {
        try {
          data = JSON.parse(body).data;
        } catch (e) {
          console.error('JSON解析错误:', e);
        }
      } else if (contentType === 'application/x-www-form-urlencoded') {
        data = querystring.parse(body).data;
      } else {
        data = body; // 其他类型直接使用原始数据
      }

      // 控制台输出接收的数据
      console.log('收到数据:', data);

      // 设置响应头并返回JSON
      res.writeHead(200, { 'Content-Type': 'application/json' });
      res.end(JSON.stringify({
        status: 99,
        data: 'receive data'
      }));
    });
  }else if (req.method === 'POST' && req.url === '/report/debugLog') {
	  let body = '';
    
    // 接收数据块
    req.on('data', chunk => {
      body += chunk.toString();
    });

    // 数据接收完成
    req.on('end', () => {
      const contentType = req.headers['content-type'];
      let log;

      // 根据Content-Type解析数据
      if (contentType === 'application/json') {
        try {
          log = JSON.parse(body).log;
        } catch (e) {
          console.error('JSON解析错误:', e);
        }
      } else if (contentType === 'application/x-www-form-urlencoded') {
        log = querystring.parse(body).log;
      } else {
        log = body; // 其他类型直接使用原始数据
      }

      // 控制台输出接收的数据
      console.log('收到日志:', log);

      // 设置响应头并返回JSON
      res.writeHead(200, { 'Content-Type': 'application/json' });
      res.end(JSON.stringify({
        status: 99,
        data: 'receive data'
      }));
    });
  } else {
    // 处理其他请求
    res.writeHead(404);
    res.end();
  }
});

server.listen(8888, () => {
  console.log('服务器运行在 http://localhost:8888');
});